XML is becoming the standard for exchanging and querying information over the web. Furthermore, much of business XML data increasingly relies on accompanying XSD schema specifications to ensure meaningful exchange of information. Languages such as XPath and XQuery have been proposed for querying XML data. One approach toward supporting XPath over such XML data is that of building a native XML repository upon which XPath queries can be executed. Alternatively, XML data can be “shredded” (with its associated XSD specification) into a relational database. The relational database alternative is attractive because it can take full advantage of mature relational database technology. Shredding XML data has in the past been addressed by focusing on the logical design step in constructing the database repository (i.e., the mapping from XSD schema to relational database schema). However, past work has ignored the role that physical database design should play in selecting the logical design for the database. This separation between the process of selecting a logical design for the database and a physical design for the database can lead to suboptimal performance when the queries are executed on the resulting database.
Most major commercial relational database systems provide a default way to map XML documents to relational storage and allow the user to specify his own mappings, which is often quite tedious given the complexity of the problem.